As the Internet has grown, search engines are relied upon for locating relevant information from various repositories located on the World Wide Web (WWW). For example, an Internet user may perform a search by entering a word, a phrase, or a set of keywords into a Web browser software, or a thin client toolbar running on the user's computer. The search engine has a query processor that finds matching information resources, e.g. web pages, images, documents, videos, and so on. The search engine may then provide one or more matching responses to the user. Search engines have also become prevalent in Intranets, i.e., private enterprise networks, where keywords are used by such search engines to locate documents and files.
The most common algorithms in search engines are based on inverted index search techniques. Inverted index search techniques are fast and can handle a large number of documents.
However, these techniques lack optimal (well-defined) criteria. For example, the search may be for a query with a limited domain. For example, the query may be for a specific type of restaurant in a specific city. When using an inverted index search technique, determining the importance of index terms used for ranking as compared to the importance of the geographical context is difficult. The index terms may have different significance in a local context as compared to a global context.